/*
 *  Licensed to the Apache Software Foundation (ASF) under one or more
 *  contributor license agreements.  See the NOTICE file distributed with
 *  this work for additional information regarding copyright ownership.
 *  The ASF licenses this file to You under the Apache License, Version 2.0
 *  (the "License"); you may not use this file except in compliance with
 *  the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
/** 
 * @author Simon Zhou, Xiaofeng Li
 * @version $Revision: 1.0.0.0.0.1 $
 */

/**
 * @file java_lang_ref_VMReferenceManager.cpp
 *
 * This file is a part of kernel class natives VM core component.
 * It contains implementation for native methods of 
 * java.lang.VMMemoryManager class.
 */


#include "open/gc.h"
#include "jni_utils.h"
#include "object.h"
#include "finalize.h"
#include "cxxlog.h"
#include "vm_threads.h"

#include "java_lang_ref_VMReferenceManager.h"


//[tick weakref]
/*
 * Class:     java_lang_ref_VMReferenceManager
 * Method:    weakReferenceGet
 * Signature: (Ljava/lang/Object;)ILjava/lang/Object;
 */
JNIEXPORT void JNICALL Java_java_lang_ref_VMReferenceManager_weakReferenceGet
  (JNIEnv *jenv, jclass, jobject refObj)
{
    //return (jobject)gc_weak_ref_get_barrier(refObj);
    gc_weak_ref_get_barrier(refObj->object);
}
